Selection/control concurrent optimization of BLDC motors for industrial robots

This paper aims to concurrently select and control off-the-shelf BLDC motors of industrial robots by using a synergistic model-based approach. The BLDC motors are considered with trapezoidal back-emf, where the three-phase (a,b,c) dynamics of motors are modeled in a mechatronic powertrain model of the robot for the selection and control problem, defining it as a multi-objective dynamic optimization problem with static and dynamic constraints. Since the mechanical and electrical actuators’ parameters modify the robot’s performance, the selection process considers the actuators’ parameters, their control input, operational limits, and the mechanical output to the transmission of the robot joints. Then, three objective functions are to be minimized, the motor’s energy consumption, the tracking error, and the total weight of installed motors on the robot mechanism. The control parameterization approach via a cascade controller with PI controllers for actuators’ voltage and a PID controller for actuators’ torque is used to solve the multi-objective dynamic optimization problem. Based on simulations of the closed-loop system, a Pareto front is obtained to examine trade-offs among the objective functions before implementing any actuators in the existing robotic system. The proposed method is tested on an experimental platform to verify its effectiveness. The performance of an industrial robot with the actuators originally installed is compared with the results obtained by the synergic approach. The results of this comparison show that 10.85% of electrical power can be saved, and the trajectory tracking error improved up to 57.41% using the proposed methodology.


Introduction
An industrial robot is a highly integrated system where mechanical, electronic, and information technology subsystems concur to render a mechatronic system, where the balance among subsystems impacts the robot's overall performance. Several optimization-based methods have been proposed to find an optimal balance or a so-called synergy among subsystems.
Typically, optimal design methodologies address the mechanism and controller integration by assuming the actuator or actuators are given. In [1], a serial two-link high-speed arm is optimally designed to minimize the robot settling time. In contrast, the design parameters are actuator locations, feedback gains, and arm link geometry. The desired task plays an essential role for ultrahigh-performance robots and could be considered since the design stage along with kinematic, dynamic, and control parameters, [2]. Most industrial robots are embedded in well-structured environments. However, uncertainties such as manufacturing tolerances or environmental changes are always present, so a robust formulation for the structure/control optimal design of mechatronic systems is proposed in [3]. Recently, ontologies have been introduced to define a set of representational primitives modeling the relationships among two domains intersecting in a mechatronic system, mechanical domain, and feedback control domain, [4]. Industrial robot powertrain design has been performed employing optimization procedures. [5] use an optimization strategy to find the powertrain for new robot concepts when cost and lifetime are considered performance index. The trajectory generation task is included in the design strategy. Service robots should be fulfilled with a lightweight mechanism with desired kinematic performance and compliance. [6] propose an integrated design optimization approach where robot kinematics, dynamics, powertrain design, and strength analysis are considered. In such an approach, kinematic and structural dimensions, motors, and gearboxes are parameterized as design variables. Customized designs of serial manipulators, [7], are usually performed via a two-step optimization strategy. The first step determines the maximum load estimation at each robot joint. In contrast, the second step selects an appropriate motor-gear assembly for the joint, providing an appropriate weight estimation and evaluating the payload capacity of each joint.
The optimal mechanical design combined with dynamic control avoids a sub-optimal behavior when path-tracking controller parameters are disregarded in the power-train selection process, [8]. A concurrent multi-objective dynamic optimization method is proposed for optimal selection and control of Permanent Magnet Synchronous Motors (PMSM) driving an industrial parallel robot as in [9].
PMSM motors exhibit high precision and torque in industrial robots and applications. However, the combination of PMSM motors and powertrains is heavy and bulky, [10]. BLDC motors can replace PMSM motors since they are lighter to overcome this problem. In addition, BLDC motors have different control requirements and operating conditions, [11]. For instance, the BLDC rotor spinning induces a trapezoidal-shaped Back Electro-Motive Force (BEMF) instead of sinusoidal, where the magnet flux linkage varies with changes in the motor current, making it unsuitable for the sinusoidal Clark's and Park's transformation [12], as used in the PMSM models. Then, the non-sinusoidal a,b,c phase variable method is preferred to model the BLDC Motor dynamics, obtaining the dynamic voltages and currents of the 3-phase system, in contrast with PMSM models, where they are usually transformed into a stationary two-phase reference system [13]. However, the electrical control of BLDC motors requires alternating stator current to feed the motor coils every 60 degrees, which means that a switching current control method is needed for a specific commutation sequence to control the motors instead of the well-known Field Oriented Control (FOC) method.
Numerous studies have been conducted to minimize specific phenomena, such as torque ripple in BLDC motors [14]. For instance, in [15], an Adaptive PID controller to regulate the speed of a BLDC motor, which improves its capacity and reduces improper irregular generation. Optimal gain values are proposed to reduce torque ripples, and a hybrid method combining Harris Hawks Optimization (HHO) and Black Widow Optimization (BWO)-based Luo converter is used for optimization. The suggested regulation technique estimates EMF, stator current, torque, and speed. Another technique [16] proposes the Improved Jellyfish Search (ImpJS) technique is presented for minimizing torque ripple on a BLDC motor with a CUK converter. Crossover and mutation operators enhance the JS algorithm and improve the speed and torque control strategy. ImpJS also upgrades the controller operation by tuning the best gain parameter. The performance of the ImpJS system using MATLAB/Simulink is analyzed and then compared with an existing system. The Jaya Optimization Algorithm on the Xilinx platform to minimize the ripples in the motor's torque is exposed in [17]. This control strategy is achieved by combining Xilinx and optimization algorithms. First, the dynamic mode of the BLDC motor is obtained and then electronically interacts with the motor using the Math lab/ Simulink model while utilizing Xilinx tools for co-simulation. Energy consumption in industrial applications is another significant concern in the literature. The research ranges from maximizing solar energy extraction in electric vehicles using BLDC motors [18] and reducing energy consumption in industrial robots by selecting appropriate motors, drives, controllers, and techniques to minimize idle time [19].Regarding the optimal selection of motors and reducers, a method is presented in [20] that optimizes servo-axis component selection without iterative processes. It creates an electromechanical model that considers electrical and mechanical factors, with a size index for precise part selection. This method eliminates experimental characterization and allows for determining the optimal selection for the most general case. The proposed method allows users to confidently determine the feasibility of selecting commercial components. A similar approach is established in [21]; this paper aims to design and select servo-actuated systems concurrently for optimizing energy consumption. The method involves scaling rules that simplify the system's characteristics into two key parameters: gearbox transmission ratio and continuous motor torque at stall. These scaling rules summarize the complex relationship between system parameters and energy consumption and are incorporated into the analytic formulation of overall energy consumption. The design problem can be cast as a constrained optimization problem with just two design variables using metamodels generated from data provided in datasheets. The entire process is automated and does not require any design iteration.
In this paper, we propose an optimization-based approach for the selection and control of off-the-shelf BLDC motors driving an industrial robotic system. Moreover, motor selection on the powertrain has several criteria that should be considered for BLDC motor types, such as torque per unit current, speed range, feedback devices, and parameter sensitivity. Regarding energy consumption, the electrical and mechanical power losses are considered from the three-phase dynamic voltages and currents. In a traditional transformed system, energy is obtained by steady-state conditions. Thus, in the optimization-based design, the sensitivity of the design variables impacts the outcome both in system performance and computational cost [22].
The energy consumption, the tracking error, and the motor weight at each robot joint are the performance indexes to be optimized, while the closed-loop system comprising the manipulator dynamics, the powertrain dynamics, and its controller states a set of differential equations as equality constraints. In our proposal, each off-the-shelf actuator is assigned an index number that identifies its electrical and mechanical parameters, thus heeding changes caused by fitting a given motor to the closed-loop dynamics. The controller's gains for each motor, as well as its index number, are the set of selection/design independent variables for the resulting multi-objective mixed-integer nonlinear optimization problem, which is solved via the NSGA-II algorithm.
In the previous work, a robot with three degrees of freedom is modeled and simulated for a regulation task with PMSM [9]. This work proposes the optimal selection of BLDC motors and the controller gain tuning validated on an experimental platform using a five-DOF industrial robot. The implementation of dead-time compensation during the switching period of the commutation period is crucial in reducing the ripple effect in the current of a PWM three-phase inverter. Multiple references, including in [23,24], have experimented with this compensation and concluded that it significantly reduces the impact of the current ripple. Therefore, it is imperative to ensure the implementation of dead-time compensation to optimize the performance of the inverter. A solution from obtained Pareto front is selected, comparing performances before and after installing the chosen motor set.

Contributions
The complexity in this work is not only due to the mechanical dynamics of the two extra degrees of freedom, with a time-variant trajectory, but also the challenge of controlling BLDC motors.
This paper examines the dynamic behavior of torque, current, and voltage in a motor system during task operation. Unlike in traditional literature, this paper considers the mechanical system's start current, non-linear effects, and acceleration changes between the motor, reducer, and load. The focus is on the dynamic profiles of these variables instead of assuming a continuous torque steady-state condition, the commonly used q-d transformation, or a priori known motor load torque. Therefore, three contributions of this article can be stated. First, a current reference generator is employed for the three-phase commutation conditions of motors. Thus, a three-dimensional current controller is used for each motor of the mechatronic system. It depends on the reference of current flow for the 60 degrees of commutation sequence instead of using a FOC control method (where sinusoidal voltages are obtained from the stationary system). Second, for the outer-loop controller, the trapezoidal function of BEMF is used to get a combined torque-position controller of the whole system. Third, a servo-amplifier is built to open the robot architecture to validate the proposed method on an experimental platform. We infer from the results that inertial contributions and control effects are distributed by evolutionary optimization while selecting motors, turning related constraints out to be feasible for the coupled mechanism, and reducing energy consumption.
The article is organized into six sections. Dynamics of the Robotic System presents the closed-loop dynamics of the overall system. Operational Boundary Constraints states operational constraints for the actuator selection process. Multi-Objective Optimization Problem establishes the multi-objective mixed-integer optimization problem. Experimental Platform presents experimental results for an industrial robot. Finally, Conclusions draw some concluding remarks.

Dynamics of the robotic system
An industrial robot typically comprises the mechanism, the power train, and the controller. In this section, we present the dynamic modeling of each subsystem and the overall closed-loop dynamics.

Mechanism dynamic model
Let us consider a rigid-link serial manipulator with n actuated joints, where q 2 R n is the generalized coordinates vector. Hence, by using the Lagrangian formulation, [25], the robot dynamics can be written as where, MðqÞ 2 R n�n is the inertia matrix, Cðq; _ qÞ 2 R n�n is the Coriolis and centrifugal forces matrix, gðqÞ 2 R n is the gravity terms vector and τ 2 R n is the input torque vector. For simplicity, time dependence notation is omitted.

Power-train dynamic model
A schematic for the powertrain at each joint is shown in Fig 1, where the BLDC motor exerts torque T m (t), to drive a dynamic load τ(t), with a given transmission ratio and efficiency, n r and η, respectively. So, the powertrain dynamics for the k-th joint are given by T m;k ðtÞ ¼ J eq;k n r;k q k þ b eq;k n r;k _ q k þ τ k ðtÞ n r;k η k ð2Þ where J eq,k and b eq,k are the equivalent inertia and viscous friction on the powertrain, obtained as Considering all the robot joints, the whole power-train dynamics can be written as where F = diag(n r,1 , . . ., n r,n ), Υ = diag(η 1 , . . ., η n ), T m ðtÞ 2 R n , τðtÞ 2 R n , J eq = diag (J eq,1 , . . ., J eq,n ), and B eq = diag(b eq,1 , . . ., b eq,n ). Then, the combined robot and power-train dynamics can be expressed as where Dðq; _ qÞ ¼ ½ðΦUÞ À 1 Cðq; _ qÞ� ð8Þ

Electrical dynamic model of actuators
The power-train is driven by BLDC motors, where the following assumptions are made, [13,26].
• Each phase of the motor has an equal number of windings that are distributed symmetrically.
• According to [27], BLDC motors differ from other synchronous permanent magnet motors in that they have a Trapezoidal Back EMF instead of a sinusoidal one. Therefore, the Back Electromotive Force voltage (BEMF) is represented by a trapezoidal function dependent on the electrical winding position θ e,k .
• There exists an electrical commutation sequence where the motor current must flow through its motor phases, as shown in Fig 2. • The motor operates every 60 electrical degrees, and the Resistance and Inductance values for each phase can be simplified as described in the literature [28]. The three-phase armatures are assumed to be symmetrical to simplify these values, meaning R a = R b = R c = R s , and L a = L b = L c = L s , and the motor terminal voltage equation, for each joint, can be written as: where V is the motor voltage, I is the motor current, E is the trapezoidal function E = f(θ e ) of the BEMF, and the subscript a,b, and c denotes the three phases of the motor, respectively.
• The eddy currents produced are directed only in the axial direction, meaning that end effects are ignored [29].
• A rigid connection between motor-reducer-load is assumed, and the following position relationship is fulfilled for the k-th joint, θ e, k = n P, k n r, k q k , where θ e, k is the electrical winding position and n P, k the motor pair poles.
Considering the electrical dynamics of each motor as in 11-13, the electrical dynamics of all the installed motors on the manipulator can be re-written as where for the z-th phase, I z 2 R n is the motor current vector, V z 2 R n is the motor voltage input vector, E z 2 R n is the backEMF vector, and T z 2 R n is defined by its k-th element as Matrices Θ = diag(n P,1 , . . ., n P,n ), R s = diag(R s,1 , . . ., R s,n ), L s = diag{[L s,1 , . . ., L s,n ]} and Λ = diag{[λ 1 , . . ., λ n ]}, relate the total pole numbers, phase resistances, phase inductances, and induced flux amplitude, respectively. Function f z,k (θ e,k ), is the trapezoidal backEMF, [13], of the z-th phase with θ e,k 2 [0, 2π], related to the k-th rotor position.  for phases A and B, respectively

Actuators control
where K p,A , K p,B , K I,A and K I,B are diagonal definite positive matrices. Voltage V * C can be obtained from motor's electrical balance [13]. Desired currents i * R depend on the current reference flow of the commutation sequence, whose values are given by where T ref is the desired motor torque vector and is the output of a PID controller intended to control the position tracking error.
where K 1 , K 2 , and K 3 are diagonal definite positive matrices, e = (q* − q), and reference q* represents the desired vector of angular position.

Mechatronic model of the robot
The closed-loop robot dynamics can be stated as where for each k-th motor of the robot

Operational boundary constraints
The proposed methodology considers off-the-shelf motor selection, assuming that motor parameters (such as masses, inertias, resistances, inductances, etc.) and boundary values for safe motor operation are available in manufacturers' catalogs. Such boundary values are used as feasibility constraints to verify that each motor's dynamic response stays within its safe operation zone as suggested in [30].
• The Continuous operation zone limit, constrained by the steady-state motor torque, where t f is the time cycle of the required task, • Peak induced limit voltage by inverter V BUS , constrained by the maximum dynamic range of motor voltage • Transmission requirements may be considered, such as maximum load on the transmission T G,max , and the maximum input velocity to the reducer ω G,max , We also consider changes in inertial parameters when testing motors on the mechanism. Thus, the following changes are regarded for each i-th local frame.

Total mass contribution : m i
Mass center location : Total Inertia : where m i,j , O c i;j and I i,j , are the mass contribution, mas center location, and invariant inertia tensor for the j-th element involved at the local frame respectively. Integer p represents the total quantity of parts involved at each i-th local frame, and S(r i,j ) is the skew symmetric matrix associated with the position vector r i;j ¼ ðO c i;j À O ci Þ.

Multi-objective optimization problem
This paper focuses on minimizing three objective functions for the robot's motor selection, energy consumption, tracking error, and motors' total weight. There is a conflict among the three objective functions. If lower energy consumption is desired, the error in trajectory tracking can be increased, or the motors' weight can be reduced since their weight is proportional to energy consumption. However, if the error in trajectory tracking is reduced, the controller gains must be increased, which leads to higher energy consumption. Alternatively, larger motors with greater torque capacities can be selected, but it must be ensured that no system constraints are violated, such as starting currents or current peaks. This section details the objective functions as well as the design decision variables.

Objective functions
Energy consumption. Let us consider that P M,k is the power consumption of the k-th motor on the mechanism, given by the sum of electrical W E,k , and mechanical W M,k power provided by such motor, as Then, the total power consumption to drive the robot is where P M 2 R n , W E 2 R n , and W M 2 R n . The objective function to minimize the energy consumption is stated as under the optimal set of motors and control gains.
Tracking error. The tracking error objective function is given by Total weight of motors. The objective is to minimize the total weight of actuators by selecting the lowest weight motors able to perform the required task, i.e.
where m m,i is the i-th motor mass of the robot.

Decision variables
Discrete decision vector for the selection process. For the k-th actuated joint, an integer index z m,k is used to select a motor from a list of d m candidate motors. Then, if the robot has n active joints to be driven by selected motors, the integer decision vector is Continuous decision vector for the control process. Considering the proposed control scheme in Fig 3, the k-th actuated joint is required to tune seven control gains, corresponding to the k-th diagonal positive elements of the matrices K 1 , K 2 , K 3 , K p, A , K p,B , K I,A , and K I,B , respectively. Thus, if the robot has n active joints, the whole controller gains make up the continuous decision vector x c , stated as

Concurrent optimization problem
A multi-objective dynamic optimization problem is finding the decision variable vector X * ¼ ½z * m ; x * c � T that optimizes the objective function vector to select and control the robot actuators optimally [31].

Genetic algorithm NSGA-II
The genetic algorithm NSGA-II, [32], is used to obtain the Pareto-Front of the proposed multi-objective optimization problem since it could find diversity and spread of non-dominated solutions compared to other meta-heuristics. For this reason, NSGA-II has been selected in this study as an optimization solver [33,34]. A flowchart of an iteration is shown in Fig 4 as described in the following steps 1-10.

A population M t (N) is obtained from the selection by tournament(Crowded Binary
Tournament Selection) of the population P t (N).

A new population Q t (M) is created from M t (N) by applying genetic algorithm operators.
The crossover (two-point crossover) is the primary operator prioritized by the Genetic Algorithm, while the mutation (bit inversion) is the secondary operator.
9. Select the best population from R t (N + M) and assigned it to P t+1 until size(P t+1 ) = N. 10. Go to next generation (step 4), until the maximum number of generations is attained.

Experimental platform
As a case study, to illustrate the performance of our proposal, we consider a Samsung industrial robot model Faraman AT1 driven by three-phase BLDC servo motors. The parameters for nominal (originally installed) robot motors are shown within the list of candidate motors in Tables 5 and 6 in S1 Appendix, where the initial vector of indexes for nominal motors is z m = [22, 22, 21, 36, 36].  are n r,1 = 120,  n r,2 = 120, n r,3 = 100, n r,4 = 80 and n r,5 = 50.
The desired task has the following conditions • Required tracking error, less than 0.1 [rad].
In order to apply the proposed method with actual data, a servo-amplifier was built to open the robot architecture. Each motor inverter in the servo-amplifier was built based on the scheme shown in Fig 6. The robot can drive a maximum load of 3 [Kg] (contracted arm). A tool was installed at the end effector to carry out the desired task, and the nominal motors should operate over their limits. Experimental tests were performed until the tracking error was bounded between +/-0.02 [rad] and motors reached the desired references, as shown in Fig 7. However, as expected to maintain such performance with desired velocity and load, joints 1 and 3 exceed the limits for safe operation.
For comparison reasons, the obtained response is named a "nominal solution". Thus, the control gain values for the nominal solution are presented in Table 1.

PLOS ONE
It is noticed that controller gain tuning and actuator selection process optimize concurrent objectives. The motor's weight is proportional to the energy consumption required to drive a load (the lighter motor, the lower the torque-velocity profile required). Moreover, installing another motor set changes the robot's inertia and mass distribution, then gain tuning is to be set again to improve the tracking error.

Statement of the optimization problem
A list of 37 BLDC-motors is used, where parameters and limits are shown in Tables 5 and 6 in S1 Appendix. Thus, concurrent optimization problem can be stated as follows.
It is required to find a decision vector of the form

Results
The NSGA-II Algorithm is used to solve the previously stated optimization problem with a population size of 100 chromosomes. Fig 8 shows  matched between them. Group 1 is represented by a blue diamond, Group 2 by a red dot, and Group 3 by a green cross. It is observed from Fig 8 that the lower the energy consumption (f 1 ), the higher the tracking error(f 2 ). In addition, the weight of motors is proportional to their energetic capacity to drive a given load. For this reason, the heavier the motor (f 3 ), the lower the tracking error (f 2 ). Moreover, for a sum of weights of the selected motors (f 3 ), for example, all the solutions of group 1, the variation in the second objective function is due to the different controller gains proposed by NSGA-II Algorithm. Solutions named S 1 and S 2 indicate both extremes of the Pareto front and are presented in Table 2. Considering trade-offs among objective performances, a non-dominated solution X* is subjectively selected as it seems to be equally weighted among objectives.
The selected chromosome of the non-dominated solution contains the following values: • z * m ¼ ½22; 22; 20; 36; 36�. • Table 3 shows the control gains' values. Table 4 shows a quantitative comparison between nominal and selected solutions. Note that the selected solution's control gains (Table 3) are higher than nominal (Table 4). However, such a solution is feasible, as seen in the last column of Table 4. It can be explained by the fact that chosen motor has around four times wider torque-velocity operating range to drive the third-joint load, weighing just two times the nominal motor's weight, having this joint the highest requested torque. Therefore, not only is a light motor selection essential but also its torque and energy capabilities. Table 4 demonstrates that the squared power consumption and the consumed electrical power of the non-dominated solution are reduced by 16.97% and 10.85%, respectively, but the robot's weight increased by 15.3% compared to the nominal solution. The most significant advantage is generated in the trajectory tracking error since it is reduced by 57.41% using the proposed methodology versus the nominal solution; this effect can be seen in Fig 9, where the tracking errors are bounded around +/− 0.02 [rad 2 ] once the motor achieves desired references. Another consequence of the increase in the proposed controller gains in the non-dominated and nominal solutions can be observed when comparing the position error for each degree of freedom. The settling times of the non-dominated solution (Fig 9) are usually shorter than those of the nominal solution (Fig 7). This shorter settling time between the non- dominated and nominal solution can be seen at the end effector trajectory differences in the Cartesian space in Fig 10 and the transient time in Fig 11. Since the third motor changes with the non-dominated solution versus the nominal one, it has been selected as the degree of freedom to exemplify the dynamics of the whole system.   it is observed that the non-dominated solution presents a smoother behavior than the nominal solution with less error to the desired trajectory.

Conclusions
A concurrent optimization method is proposed for the selection and control of BLDC motors, which are tested on a real industrial robot, obtaining feasible and non-dominated solutions for the required task.
A three-phase electrical dynamics of AC servomotors are proposed for BLDC motors in the mechatronic model of the powertrain for industrial robots. In this case, the RMS power of BLDC motors is computed to compare the energy consumption between the nominal and selected solution. While in the proposed method for PMSM motors, the nominal current on the powertrain is defined by Clark's and Park's transformation, q − d, stationary systems that tend to a constant value to yield convergence of the voltages of the transformed quadrature. In the case study, a reduction of energy consumption of around 16.97% is obtained. Even when the total weight of motors is higher for the selected non-dominated solution, it was possible, due to simulations of the closed-loop system, to analyze actuators' limits and ranges to fulfill constraints. Moreover, it is essential to consider inertial changes due to different actuators since the system response also depends on such changes. Furthermore, this proposal is applied to the actuators' selection for a robot to follow a specific desired trajectory, which means that actuators' selection and control gains values are simultaneously settled for that required task. Then, the proposed methodology allows for obtaining feasible, real, and viable solutions to perform a desired task satisfying concurrent objectives for an industrial robot.